package edu.ynu.se.xiecheng.achitectureclass.service;

import edu.ynu.se.xiecheng.achitectureclass.entity.CameraCapture;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;

public interface CameraService {
    /**
     * 抓拍照片
     * @param quality 图片质量（可选）
     * @return 抓拍记录
     */
    CameraCapture captureImage(Integer quality);
    
    /**
     * 获取指定时间范围内的抓拍记录
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @return 抓拍记录列表
     */
    List<CameraCapture> getCapturesByTimeRange(LocalDateTime startTime, LocalDateTime endTime);
    
    /**
     * 获取最近一周的抓拍记录
     * @return 抓拍记录列表
     */
    List<CameraCapture> getLastWeekCaptures();
    
    /**
     * 获取摄像头信息
     * @return 摄像头信息（设备序列号、直播地址等）
     */
    Map<String, String> getCameraInfo();
    
    /**
     * 获取摄像头访问令牌
     * @return 访问令牌信息
     */
    Map<String, Object> getCameraToken();
} 